import java.io.File;
import java.util.Scanner;

//扫描指定目录，并找到名称中包含指定字符的所有普通文件（不包含目录），并且后续询问用户是否要删除该文件
public class HomeWork1 {
    public static void main(String[] args) {
        //1.输入必要信息: 目录路径(不是文件路径-->因为是在目录里面去找文件)     关键词
        Scanner scanner = new Scanner(System.in);
        System.out.println("输入目录路径: ");
        String filePath =scanner.next();
        System.out.println("输入查询关键词: ");
        String searchWord = scanner.next();


        //2.判断目录合法性
        File file = new File(filePath);
        if(!file.isDirectory()){
            //因为输入的是目录路径,所以是判断路径,此时标识该路径不是目录
            System.out.println("目录路径信息非法!");
        }

        //3.进行递归
        searchFile(file,searchWord);
    }

    private static void searchFile(File file,String searchWord){
        File[] files = file.listFiles();
        if(files==null){
            //目录内容为空
            return;
        }
        for (File f:files){
            if(f.isFile()){
                String fName = f.getName();
                if(fName.contains(searchWord)){
                    System.out.println("找到文件!路径为: "+f.getAbsolutePath());
                }
            }else if (f.isDirectory()){
                //表示f是一个目录
                searchFile(f,searchWord);
            }
        }
    }
}
